package pe.gob.foncodes.spp.web.controladores;

import java.io.Serializable;

import javax.annotation.PostConstruct;
import javax.faces.bean.ApplicationScoped;
import javax.faces.bean.ManagedBean;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

@ManagedBean
@ApplicationScoped
public class ControladorMenu implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int index;
	private FacesContext facesContext;
	private ExternalContext externalContext;
	private HttpServletRequest httpServletRequest;
	private HttpSession httpSession;
	private String contextPath;
	private String menuResultado;
	
	private Integer tapPortafolio;
	private Integer tabPortafolioMarcoLogico;

	public ControladorMenu() {

	}

	@PostConstruct
	void inicializaMenu() {
		facesContext = FacesContext.getCurrentInstance();
		externalContext = facesContext.getExternalContext();
		httpServletRequest = (HttpServletRequest) externalContext.getRequest();
		httpSession = httpServletRequest.getSession(false);
		setContextPath(httpSession.getServletContext().getContextPath());
		menuResultado = "";
		setContextPath("");
	}

	public String menu(final int menuItem) {

		try {
			switch (menuItem) {
			case 0:
				menuResultado = "/paginas/portafolio/portafolio.faces?faces-redirect=true";
				setIndex(menuItem);
				break;
			case 1:
				menuResultado = "/paginas/configuracion/configuracion.faces?faces-redirect=true";				
				setIndex(menuItem);
				break;
			case 2:
				menuResultado = "/paginas/promocion/promocion.faces?faces-redirect=true";				
				setIndex(menuItem);
				break;
			default:
				break;
			}
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		return menuResultado;

	}

	public int getIndex() {
		return index;
	}

	public void setIndex(int index) {
		this.index = index;
	}

	public String getMenuResultado() {
		return menuResultado;
	}

	public void setMenuResultado(String menuResultado) {
		this.menuResultado = menuResultado;
	}

	public String getContextPath() {
		return contextPath;
	}

	public void setContextPath(String contextPath) {
		this.contextPath = contextPath;
	}

	public Integer getTapPortafolio() {
		return tapPortafolio;
	}

	public void setTapPortafolio(Integer tapPortafolio) {
		this.tapPortafolio = tapPortafolio;
	}

	public Integer getTabPortafolioMarcoLogico() {
		return tabPortafolioMarcoLogico;
	}

	public void setTabPortafolioMarcoLogico(Integer tabPortafolioMarcoLogico) {
		this.tabPortafolioMarcoLogico = tabPortafolioMarcoLogico;
	}
	
}
